package com.ecube.protocol.box;

import com.ecube.protocol.common.ProtocolFunction;
import com.ecube.protocol.enums.BoxFunctionEnum;
import lombok.Data;

/**
 * 箱变低压进线断路状态
 *
 * @author zhuweijun
 * @version 1.0.0
 * @since 2025/7/29 11:36
 */
@Data
@ProtocolFunction(type = BoxFunctionEnum.class, value = "INPUT_ACB_STATE")
public class BoxInputAcbState {

    private String swapId; // 换电站/充电站编号
    private String inputAcbId; // 低压进线断路器标识
    private Integer inputAcbWorkState = 1; // 低压进线断路器合分闸状态, 0-分闸；1-合闸
    private Float inputVoltageA = 25.0F; // 低压进线断路器AB线电压, 单位：V
    private Float inputVoltageB = 25.0F; // 低压进线断路器BC线电压, 单位：V
    private Float inputVoltageC = 25.0F; // 低压进线断路器CA线电压, 单位：V
    private Float inputCurrentA = 25.0F; // 低压进线断路器A相电流, 单位：A
    private Float inputCurrentB = 25.0F; // 低压进线断路器B相电流, 单位：A
    private Float inputCurrentC = 25.0F; // 低压进线断路器C相电流, 单位：A

    /**
     * 低压进线断路器告警状态: 0-normal；1-failure
     */
    private Integer inputAcbFaultState = 0; // 0-normal；1-failure	否	是

    /**
     * 低压进线断路器跳闸原因
     */
    private String inputAcbTripReason;

    /**
     * 低压进线有功功率
     */
    private Float inputActivePower = 150.0F;

    /**
     * 低压进线无功功率
     */
    private Float inputReactivePower = 30.F;

    /**
     * 低压进线功率因数
     */
    private Float inputPowerFactor = 0.2F;

    /**
     * 低压进线频率
     */
    private Float inputFrequency = 1.0F;

    /**
     * 低压进线正向有功电量
     */
    private Float inputElectricity = 506.8F;

    /**
     * 低压室环境温度
     */
    private Float inputAcbAmbientTemperature  = 18.6F;

    /**
     * 低压室环境湿度
     */
    private Float inputAcbAmbientHumidity = 18.6F;

    /**
     * 低压进线A相温度
     */
    private Float inputTemperatureA = 23.1F;

    /**
     * 低压进线B相温度
     */
    private Float inputTemperatureB = 23.1F;

    /**
     * 低压进线C相温度
     */
    private Float inputTemperatureC = 23.1F;

    /**
     * 低压进线正向无功电量
     */
    private Float inputkVarh = 231.0F;

    /**
     * 站的类型 1-换电站，2-充电站
     */
    private Integer stationType = 1;

    /**
     * 低压进线反向有功电量
     */
    private Float inputReverseElectricity = 56.2F;

    /**
     * 低压进线反向无功电量
     */
    private Float inputReversekVarh = 45.2F;
}
